using System;
using System.Collections.Generic;
using Microsoft.Practices.ObjectBuilder2;

namespace UniAspect.Aspect.Emit
{
    [Obsolete]
    public interface IAspectInsertionPolicy : IBuilderPolicy
    {
        object CreateClassProxy(Type typeToCreate, IBuilderContext buildContext, object[] constructorArguments);
        object CreateInterfaceProxy(object target, IBuilderContext buildContext);

        IList<IAspect> Aspects { get; }

        bool NoAspects { get; }
    }
}